home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1995 May / macformat-024.iso / Shareware City / Applications / Mac Spectacle 1.0.v / README Documentation < prev    next >
Encoding:
Text File  |  1995-01-10  |  9.5 KB  |  262 lines  |  [TEXT/EDIT]

  1. Mac Spectacle   -   Documentation   -   08.Jan.95 KIO !
  2. -------------------------------------------------------
  3.  
  4. Mac Spectacle is a software emulator of the Sinclair ZX Spectrum, 
  5. running on most Macintosh computers.
  6.  
  7.  
  8. Contents
  9. --------
  10.  
  11. ** System requirements
  12. ** Imortant note!
  13. ** Instructions
  14. ** Bug report
  15. ** Copyrighted stuff
  16. ** Where can i get Spectrum games?
  17. ** How can i load real Spectrum tapes?
  18.  
  19.  
  20. System requirements
  21. -------------------
  22.  
  23. Mac Spectacle runs on any Macintosh computer that meets the 
  24. following requirements:
  25.    mc68020 or higher; PPC is ok
  26.    System 7.0 or higher
  27.    color Quickdraw and Quicktime
  28.  
  29. In the actual version 8bit indexed color, 8 bit greyscale or 16bit true color 
  30. video is recommended. In 1, 2, 4 and 32bit mode the screen update and window refresh 
  31. is very slow. When the ZX Spectrum window is not the top window or when it is not
  32. entirely within the screen, screen update and refresh is slow in any screen mode.
  33. For some reason, Notebooks go to sleep mode, even if the emulator is running.
  34.  
  35.  
  36. IMPORTANT NOTE
  37. --------------
  38.  
  39. NEVER kill the emulator using control+option+escape except really nothing
  40. else works, for this will leave a ticker routine installed and you will 
  41. probably not even manage to shut down your Macintosh properly.
  42.  
  43. The emulator is running very stable. It only crashed my Mac when i was 
  44. testing new routines.  
  45.  
  46.  
  47. Instructions
  48. ------------
  49.  
  50. The menus:
  51.  
  52. Apple
  53.     About ...        Shows some legal notes and a pict of me
  54.     Keyboard        Toggles the highres display of a ZX Spectrum keyboard on/off
  55.  
  56. File
  57.     Load core        loads a .SNA or .Z80 snapshot file
  58.     Save core        saves a .SNA snapshot file
  59.     Restart        reloads ROM and does a reset
  60.     Hold        suspends the Z80 CPU
  61.     Resume        resumes the Z80 CPU
  62.     Insert tape        open a tape file for subsequent LOAD ""
  63.     Eject tape        closes an open tape file
  64.     Save picture    saves a pict file (not a bitmap!)
  65.     Save preferences    Saves some settings and window locations as preferences
  66.     Quit        quits application
  67.  
  68. Display
  69.     1:1            tiny screen
  70.     2:1            double size screen, only a little bit slower
  71.     Refresh 1/25    screen update 25 times a second (slows down emulation)
  72.     ...
  73.     Refresh 6/25    screen update only 25/6 times a second (fastest emulation)
  74.  
  75. Options
  76.     Basic keyboard    Remapping of most keys, roll over supression
  77.     Game keyboard    Native Specci keyboard, physical layout
  78.     International    Menus, messages etc. in English
  79.     German        Menus, messages etc. in German
  80.  
  81. Debugger
  82.     Logfile off            Errors etc. aren't logged in a file
  83.     L. only alerts        minimal error logging to file
  84.     L. general messages        recording of standard messages to file
  85.     L. extended debugging    also debugging messages logged to file
  86.     Console only alerts        minimal error recording to console window
  87.     C. general messages        standard messages are written to console
  88.     C. extended debugging    also debugging messages are displayed
  89.     Trigger NMI            trigger non maskable interrupt
  90.     Trigger Reset        better use Restart from File menu
  91.     ***test***            This menu entry should not be present
  92.  
  93. Windows
  94.     Console        Window for all messages, errors, notes etc.
  95.     ZX Spectrum        The window you are mostly interested in
  96.     Tape recorder    Window with some controls to handle tape files
  97.     Keyboard        Highres display of a ZX Spectrum keyboard
  98.   
  99.  
  100. Loading and saving snapshots:
  101.  
  102. .SNA and .Z80 files may be launched by drag&drop, or if they were created
  103. by Mac Spectacle by double clicking, or from the File menu. Snapshots 
  104. only contain information about the ZX Spectrum side, not about any 
  105. settings of the emulator. So window size, location or keyboard setting 
  106. aren't affected. If the snap doesn't launch, the Z80 CPU may be halted, 
  107. try 'Resume' or 'Restart' from the File menu. Snapshots may be saved at 
  108. any time from the File menu.
  109.  
  110. Loading tapes:
  111.  
  112. .tape files represent the original program tapes. They may be opened by 
  113. drag&drop or by double click or from the file menu. A small window
  114. opens, showing some tape recorder controls. The window is not topped,
  115. to leave the ZX Spectrum window in front. You normally don't need to
  116. access it. If you type LOAD "" (you know, you have to type j"" if you
  117. have selected basic keyboard mapping or even <j> <option+p> <option+p> 
  118. if you have selected the game keyboard) the emulator reads from this 
  119. file. If you type LOAD"" without a tape open, you will be prompted. If
  120. you open the tape recorder window from the windows menu, you will be
  121. prompted too.
  122.  
  123.  
  124. Bug report
  125. ----------
  126.  
  127. Not yet supported:
  128.  
  129.    Sound
  130.    Writing to any location on a tape; erasing tapes
  131.    Writing .Z80 file format for snapshots
  132.    Writing .scr file format for screenshots
  133.    versions higher than ZX Spectrum 48k
  134.    Joystick (i think of Kempston)
  135.    Trace mode
  136.    PPC native code
  137.    Fast 1, 2, 4 and 32bit screen refresh
  138.    Faster refresh for windows "not in optimal position"
  139.  
  140. Not implemented:
  141.  
  142.    INI, IND, INIR, INDR
  143.    OUTI, OUTD, OTIR, OTDR
  144.    IM0
  145.    exact timing of Z80 instructions
  146.    exact incrementation of R
  147.    exact implementation of DAA
  148.    Some illegal instructions 
  149.    Some undocumented behaviour of the Z80 CPU
  150.  
  151. Errors/known problems:
  152.  
  153.    There ARE errors in the Z80 emulation. At least ONE.
  154.    ATIC ATAC sometimes doesn't realize the player wants to leave a room
  155.    FRED freezes when you find a map.
  156.    The Basic interpreter writes garbage to some of the first characters,
  157.    when you edit Basic lines or scroll through a Basic program.
  158.    But most games run good (including ATIC ATAC)
  159.    I appreciate anybody making suggestions on the wrong emulated opcodes!
  160.    
  161.    DAA handling is lossy, that means, it may fail. I do not support the 
  162.    corresponding flags, i do it my way.
  163.    
  164.    I do a good job keeping all pointers inside the Z80 core. But there
  165.    are some conditions that are not checked:
  166.    * SP may be incremented or decremented beyond RAM and ROM.
  167.    * overwriting the ROM
  168.    * When interrupts are off and remain off, task switching on the
  169.      Macintosh may hang for seconds. Type <apple>+<q> or <apple>+<n>
  170.      Never kill Mac Spectacle using <control>+<option>+<escape>
  171.    
  172.    If the ZX Spectrum window is not the frontmost and not fully inside
  173.    the screen, i delegate the task to redraw the window to QuickDraw. 
  174.    Then screen update and window refresh is slow.
  175.    
  176.    Secondary screens are not handled correctly. Test it, you'll see it.
  177.    
  178.    For some reason, Notebooks go to sleep mode, even if the emulator 
  179.    is running.
  180.    
  181.    I've not yet found the right way to swich off the mouse arrow.
  182.    
  183.    Sound output slows down the emulator drastically. If you think the
  184.    Spectrum hangs at the beginning of games or new levels, it is most
  185.    probably playing some sound.
  186.    
  187.    A certain percentage of interrupts is missed. This is due to 
  188.    background activities on the Mac. If they take longer than 1/50 secs, 
  189.    i can't do much against it.
  190.   
  191.   
  192. Copyrighted stuff
  193. -----------------
  194.  
  195. Mac Spectacle contains the original ZX Spectrum 1982 ROM in it's resource
  196. fork. The ROM is copyrighted and the owner of the copyright is AMSTRAD,
  197. who has taken over Sinclair Inc.. Fortunately AMSTARD has stated publically,
  198. that the unmodified ZX Spectrum ROM may be distributed with any software 
  199. emulator of the ZX Spectrum. I think, we have to thank them for this.
  200.  
  201. In addition, i have included two program tapes for demonstration purpose,
  202. "pool" is a billard simulation and "Lords of Midnight" a fantasy role
  203. playing game, based on some Tolkien stuff. Both are still copyrighted,
  204. but permission to copy is granted by their respective copyright holders.
  205. I have checked this mainly by looking them up at ftp.nvg.unit.no.
  206.  
  207. Is it legal to use memory snapshots?
  208. [taken from Marat Fayzullins Spectrum.FAQ file version 2.0]
  209. Formally, using snapshotted game without legal owning a copy of it
  210. on a tape is a *copyright violation*. Nevertheless, ZX-Spectrum games
  211. are not being sold anymore and using snapshots doesn't harm copyright
  212. holders much, if you don't make profit from it and don't distribute
  213. snapshots on a large scale. It seems that some companies [Ultimate/
  214. USGold] have nothing against free distribution of their games, but
  215. there is no written permission yet.
  216.  
  217.  
  218. Where can i get Spectrum games?
  219. -------------------------------
  220.  
  221. If you have access to ftp, here are some sites where you can get snapshots
  222. of ZX Spectrum games and (a few) other programs. There are a lot of
  223. other emulators for other platforms too:
  224.  
  225. ftp.dcc.uchile.cl    /pub/Sinclair        
  226. ftp.nvg.unit.no        /pub/sinclair    // only 100% legal stuff
  227. ftp.ijs.si        /pub/zx        // very extensive but i never got there...
  228. ftp.itu.edu.tr         /pub/spectrum    // looks like 9600bps to me...
  229.  
  230. If you don't have access to any ftp possibilities: bad luck. See next
  231. chapter for a work around ...
  232.  
  233. Best internet usegroup for Spectrum fans: comp.sys.sinclair
  234.  
  235.  
  236. How can i load real Spectrum tapes?
  237. -----------------------------------
  238.  
  239. If you like Mac Spectacle or any other ZX Spectrum emulator, you 
  240. probably owned or still own a ZX Spectrum or one of it's derivates.
  241. And if you owned a ZX Spectrum, you have probably some old tapes 
  242. with programs lying around. 
  243.  
  244. If you want to rescue them from decaying and reuse them with the 
  245. emulator, get ZX Loader, a program which reads in most tapes and 
  246. stores them as 'tape files' on your Macintosh's hard disk. You can 
  247. read from those 'tapes' just like the real ZX Spectrum can read real 
  248. tapes, and it's much more fun watching the red-white or blue-yellow 
  249. striped border, while a program loads (faster than on a real Specci, 
  250. of corse) than just loading a snap. The tapes included in this 
  251. Mac Spectacle distribution have been loaded with ZX Loader.
  252.  
  253. ZX Loader is probably available at the same location you have got
  254. Mac Spectacle from.
  255.  
  256.  
  257.     Have fun!
  258.     
  259.     ... KIO !
  260.  
  261.  
  262.